Three-dimensional visual representations and panoramic views of objects have become increasingly important and useful in entertainment, commerce, and education. In movies and animation, for example, panoramic views can add interesting special effects such as rotation about stop-action scenes. In games and virtual reality applications, three-dimensional representations of objects permit changes in the views of the objects according to the virtual movement of a user. In electronic commerce, a web site can use three-dimensional representations of merchandise to allow a costumer to view the merchandise from any desired perspective. Three-dimensional representations of works of art, exhibits, and antiques can be similarly viewed for commercial or educational purposes, and three-dimensional or panoramic views of objects can aid scientists and engineers during research and development of new technologies or products.
One technique for creating a panoramic view of an object is sometimes referred to as 2.5-dimensional modeling. A 2.5-dimensional model of an object generally includes as series of images of the object from different perspectives. Taking these images generally requires a precision arrangement of cameras that photograph the object from the required perspectives. If enough images are used, the images can be shown in sequence to provide smooth apparent movement of a camera around the object. The 2.5-dimensional techniques have been effectively used, for example, in movies to allow a change in camera angle during stop action or slow motion filming. However, a 2.5-dimensional model of an object only provides specific views of the object and may be unable to provide some of the desired views of the object.
A full three dimensional model of an object describes the surface of the object in three dimensions and permits rendering of any desired views of the object. Reconstruction of a three dimensional model of an object has generally required several images of an object with each image having a known perspective (i.e., a known orientation and location of the camera relative to the object). The known orientations and locations of the cameras allow determination of projection matrices for the images. The projection matrices (or inverses of the projection matrices) allow determination of the three-dimensional coordinates of point, on the object from the locations of the points in the images. The surface of the object can then be represented using polygons with the vertices of each polygon having three-dimensional coordinates calculated from the positions of the vertices in the images.
To avoid the complexity and expense of camera or turntable systems that provide carefully measured camera orientations, efforts have been made to construct three-dimensional models based on series of unmeasured images, i.e., images where camera parameters such as the orientation and location of the camera relative to the object are unknown. A Wolfgang Niem and Jochen Wingbermühle, “Automatic Reconstruction of 3D Objects Using a Mobile Monoscopic Camera”, Proceedings of the International Conference on Recent Advances in 3-D Digital Imaging and Modeling, IEEE (1997) describes a camera calibration technique using a known radially symmetric background pattern that is photographed with the object. With this technique, circles surrounding the object appear elliptical in the images, and the camera parameters can be determined from measurements of ellipse in the images. This technique can encounter difficulties in identifying thin lines corresponding to the circles in the background, particularly since the object generally blocks the view of a portion of the each surrounding circle. Additionally, calculations for such systems are best performed in radial coordinates, which can increase complexity and required processing power.
Other modeling techniques are known for images that do not contain a known background. For example, M. Pollefeys, R. Koch and L. Van Gool, “Self-Calibration and Metric Reconstruction in spite of Varying and Unknown Internal Camera Parameters,” International Journal of Computer Vision, 32(1), 7–25, 1999 provides methods for calibrating images for camera parameters without using a known pattern in the images. R. Koch, M. Pollefeys, L. Van Gool, “Realistic surface reconstruction of 3D scenes from uncalibrated image sequences,” Journal Visualization and Computer Animation, Vol. 11, pp. 115–127, 2000 and M. Pollefeys, R. Koch, M. Vergauwen, L. Van Gool, “Automated reconstruction of 3D scenes from sequences of images,” Isprs Journal Of Photogrammetry And Remote Sensing (55)4 (2000) pp. 251–267 describe methods for reconstruction of a three-dimensional model of a selected portion of architectural structure. An article entitled “3D Model Acquisition from Extended Image Sequences”, Proc. 4th European Conference on Computer Vision, LNCS 1065, Cambridge, pages 687–695 (1996) by Paul Bradley, Phillip Torr, and Andrew Zisserman describe methods for constructing a three-dimensional model from extended image sequences such as from a camcorder.
The prior systems for generating 3D models from uncalibrated images have typically been limited in the angular portion of an object represented or have required a large amount of processing power to implement. Accordingly, ability to construct a full 3D model of an object has been out of reach for most users. Simpler and less expensive systems and methods for generating three-dimensional models and/or panoramic views are desired.